﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using GestionCases;

namespace GestionEco
{
    public class Loup : Carnivore
    {
        public Loup(int uneAttaque, int uneEsquive, int desDegats, int uneVue, int uneRegen, int uneFaimMax, int unCoeffFaim, int uneVieMax, int uneSoifMax, int unCoeffSoif, int desPointsActionActuels, int unAgeMax, int uneMajorite, int unNbTourReprod, string unSexe, Color uneCouleur)
            : base(uneAttaque, uneEsquive, desDegats, uneVue, uneRegen, uneFaimMax, unCoeffFaim, uneVieMax, uneSoifMax, unCoeffSoif, desPointsActionActuels, unAgeMax, uneMajorite, unNbTourReprod, unSexe, uneCouleur)
       {

           
       }

        public override void afficher()
        {
            Console.WriteLine("je suis un loup");
        }

        public override void seDeplacer()
        {
            base.seDeplacer();
        }

        public override void seRegenerer()
        {
            base.seRegenerer();
        }

        public override void vieillir()
        {
            base.vieillir();
        }

        public override void boire(Case uneCase)
        {
            base.boire(uneCase);
        }

        public override void seNourrir()
        {
            base.seNourrir();
        }

        public override Loup seReproduire(Loup uneChevre)
        {
            base.seReproduire();
            Loup enfant;
            Random rnd;

            int enfAttaque = (this.Attaque + enfant.Attaque) / 2;
            int enfEsquive = (this.Esquive + enfant.Esquive) / 2;
            int enfDegat = (this.Degats + enfant.Degats) / 2;
            int enfVue = (this.Vue + enfant.Vue) / 2;
            int enfRegen = (this.Regen + enfant.Regen) / 2;
            int enfFaimMax = (this.FaimMax + enfant.FaimMax) / 2;
            int enfcoeffFaim = (this.CoeffFaim + enfant.CoeffFaim) / 2;
            int enfVieMax = (this.VieMax + enfant.VieMax) / 2;
            int enfSoifMax = (this.SoifMax + enfant.SoifMax) / 2;
            int enfCoeffSoif = (this.CoeffSoif + enfant.CoeffSoif) / 2;
            int enfPointsActuel = (this.PointsActionActuels + enfant.PointsActionActuels) / 2;
            int enfAgeMax = (this.AgeMax + enfant.AgeMax) / 2;
            int enfMajorite = (this.Majorite + enfant.Majorite) / 2;
            int enfNbTourReprod = (this.NbTourReprod + enfant.NbTourReprod) / 2;
            int enfS = rnd.Next(1, 2);
            string enfSexe = "";
            if (enfS == 1)
            {
                enfSexe = "Male";
            }
            else
            {
                enfSexe = "Femelle";
            }

            enfant = new Loup(enfAttaque, enfEsquive, enfDegat, enfVue, enfRegen, enfFaimMax, enfcoeffFaim, enfVieMax, enfSoifMax, enfCoeffSoif, enfPointsActuel, enfAgeMax, enfMajorite, enfNbTourReprod, enfSexe, Color.Red);

            return enfant;

        }
    }
}
